package String;
/*
    String构造方法：
        public String();创建一个空白字符串对象，不含有任何内容
        public String(char[] chs);根据字符数组的内容，来创建字符串对象
        public String(byte bys);根据字节数组的内容，来创建字符串对象
        String s="abc";直接赋值的方式创建字符串对象，内容就是abc

    推荐使用直接赋值方法

    特点：
    使用直接赋值方法
    String s1="abc"；
    String s2="abc"；
    以“ ”方式给出的字符串，只要字符序列相同（顺序和大小），JVM都只会建立一个String对象，在字符串池中维护
    s1和s2本质上是同一个对象

    字符串比较:s1.equals(s2);
    使用==做比较：
        基本类型：比较数据值
        引用类型：比较地址值

     字符串遍历：line.charAt(i);
     字符串长度：line.length();
     for(int i=0;i<line.length();i++){
        sout(line.charAt(i));
     }

 */
public class StringDemo {
    public static void main(String[] args) {
        //public String();创建一个空白字符串对象，不含有任何内容
        String s1=new String();
        System.out.println("s1:"+s1);

        //public String(char[] chs);根据字符数组的内容，来创建字符串对象
        char[] chs={'a','b','c'};
        String s2=new String(chs);
        System.out.println("s2:"+s2);

        //public String(byte bys);根据字节数组的内容，来创建字符串对象
        byte[] bys={97,98,99};//byte对应的ascii码
        String s3=new String(bys);
        System.out.println("s3:"+s3);//abc

        //String s="abc";直接赋值的方式创建字符串对象，内容就是abc
        String s4="abc";
        System.out.println("s4:"+s4);

        //字符串比较
        String s5=new String(chs);
        String s6=new String(chs);
        String s7="abc";
        String s8="abc";
        System.out.println(s5==s6);//f
        System.out.println(s5==s7);//f
        System.out.println(s7==s8);//t
        System.out.println("---------");
        System.out.println(s5.equals(s6));//t
        System.out.println(s5.equals(s7));//t
        System.out.println(s7.equals(s8));//t

        String line="asdfasdfgas";
        System.out.println(line.length());
        for(int i=0;i<line.length();i++){
            System.out.println(line.charAt(i));
        }
    }
}
